/*
 *  Arrow
 *
 *  Created by David Giovannini on 1/5/07.
 *  Copyright 2007 Software by Jove. All rights reserved.
 *
 */
 
#include "SBJ/Arrow/Message.h"
#include "SBJ/Arrow/MsgProxy.h"

#include <limits>

namespace SBJ
{

namespace Arrow
{

const Message::Priority Message::highest_priority =  std::numeric_limits< Priority >::min();
const Message::Priority Message::lowest_priority = std::numeric_limits< Priority >::max() - 1;
const Message::Priority Message::unknown_priority = std::numeric_limits< Priority >::max();
	
Message::~Message( void )
{
}

void
Message::operator delete( void* p )
{
	( ( Message* ) p )->m_topic.getMsgProxy().free( ( Message* ) p );
}

void
Message::dropped( EDropped )
{
}

void
Message::execute( void )
{
}

size_t
Message::getThreadedThreshold( void ) const
{
	return std::numeric_limits< size_t >::max();
}

bool
Message::doesBlockOnDispatch( void ) const
{
	return true;
}

bool
Message::beginInvocations( size_t count )
{
	return true;
}

void
Message::endInvocations( void )
{
}

}

}
